﻿using MediatR;
using System;
using System.Collections.Generic;
using System.Text;

namespace xiaodingmarket_Domain_core.Events
{
    /// <summary>
    /// Event 领域消息
    /// 事件类是不可变的，它表示已经发生的事情，意味着只有私有set,没有写入方法。
    /// 事件存放通用属性，例如事件触发时间，触发的用户，数据版本号。
    /// 事件模型 抽象基类，继承 INotification,也就是说，拥有中介者模式中的 发布/订阅模式
    /// 同时继承了Messgae 也就是继承了 请求/响应模式
    /// </summary>
    public abstract class Event : Message, INotification
    {
        public DateTime Timestamp { get; private set; }

        protected Event()
        {
            Timestamp = DateTime.Now;
            
        }
        
    }
}
